package com.earthea.common.algorithm.urlmatch;

/**
 * URL匹配算法
 *
 * @param <D> 节点数据类型
 */
public interface UrlMatchAlgorithm<D> {
    void addRule(String method, String url, boolean isPrefix, D data);

    default void addRule(String method, String url, boolean isPrefix) {
        addRule(method, url, isPrefix, null);
    }

    boolean isMatch(String method, String url);

    D getMatchData(String method, String url);
}
